Build a Shoe Store Inventory App
Code Quality
| Criteria | Meet Specification |
|---|---|
|
Correctly use ViewModel and LiveData lifecycle classes in an Android app |
The Detail screen needs to add the new item to the view model. The listing screen should be listening to that model and show the new item. |
|
Correctly implement Single Activity architecture |
There should only be one activity: MainActivity. Each screen should be a fragment. |
|
Write error-free code |
The project's code is error-free. |
Layouts
| Criteria | Meet Specification |
|---|---|
|
Create layouts using the correct ViewGroups and Views in an Android app. |
The project correctly implements LinearLayout and ConstraintLayout to match the complexity of the layout of a page. Using code comments, the project justifies the use of ConstraintLayout or LinearLayout |
|
Apply Databinding in Layouts to show the correct data to users in multiple layouts. |
|
|
Correctly use the and |
The detail layout contains an element with the name of the variable and the class associated with it.
|
|
Create a multi-screened Android Application using Android widgets. |
|
|
List screen uses ScrollView and LinearLayout for showing a list of items and one Floating Action button for going to the detail screen. |
|
|
Create a detail screen that shows two columns of labels and edit views to enter in a new item. |
|
Navigation
| Criteria | Meet Specification |
|---|---|
|
Create a navigation file that correctly takes a user from one page to the next in an Android app |
The app needs to traverse the following screens in the correct order:
|
|
Use Databinding for click listeners on a navigation screen in an Android app. |
|
|
Create a Logout menu to return to the Login screen. |
This menu will appear only on the Shoe Listing screen and will return the user to the login screen |
Tips to make your project standout:
The student uses styling on the TextViews and buttons
Layouts look nicer than the basic layout
Navigation uses Capitalized names for the labels
Navigation uses enter/exit animations